🎖️GitЯра🎖️
Node / meshtastic / Meshtastic-Android / files / feature / node / src / commonMain / kotlin / org / meshtastic / feature / node / navigation / NodesNavigation.kt
Displaying Raw • Download
feature/node/src/commonMain/kotlin/org/meshtastic/feature/node/navigation/NodesNavigation.kt 4e15ef1c7f68f8c683fe8b7ff741a5167e154d2e (4e15ef1c) Text, 11.21 KB
T8b949e/*
* Copyright (c) 2026 Meshtastic LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
Tff7b72package T7ee787org.meshtastic.feature.node.navigation
Tff7b72import T7ee787androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi
Tff7b72import T7ee787androidx.compose.material3.adaptive.navigation3.ListDetailSceneStrategy
Tff7b72import T7ee787androidx.compose.runtime.Composable
Tff7b72import T7ee787androidx.lifecycle.compose.dropUnlessResumed
Tff7b72import T7ee787androidx.navigation3.runtime.EntryProviderScope
Tff7b72import T7ee787androidx.navigation3.runtime.NavBackStack
Tff7b72import T7ee787androidx.navigation3.runtime.NavKey
Tff7b72import T7ee787kotlinx.coroutines.flow.Flow
Tff7b72import T7ee787kotlinx.coroutines.flow.MutableSharedFlow
Tff7b72import T7ee787org.jetbrains.compose.resources.DrawableResource
Tff7b72import T7ee787org.jetbrains.compose.resources.StringResource
Tff7b72import T7ee787org.koin.compose.viewmodel.koinViewModel
Tff7b72import T7ee787org.koin.core.parameter.parametersOf
Tff7b72import T7ee787org.meshtastic.core.navigation.ContactsRoute
Tff7b72import T7ee787org.meshtastic.core.navigation.NodeDetailRoute
Tff7b72import T7ee787org.meshtastic.core.navigation.NodesRoute
Tff7b72import T7ee787org.meshtastic.core.navigation.Route
Tff7b72import T7ee787org.meshtastic.core.resources.Res
Tff7b72import T7ee787org.meshtastic.core.resources.air_quality
Tff7b72import T7ee787org.meshtastic.core.resources.device
Tff7b72import T7ee787org.meshtastic.core.resources.environment
Tff7b72import T7ee787org.meshtastic.core.resources.host
Tff7b72import T7ee787org.meshtastic.core.resources.ic_air
Tff7b72import T7ee787org.meshtastic.core.resources.ic_cell_tower
Tff7b72import T7ee787org.meshtastic.core.resources.ic_group
Tff7b72import T7ee787org.meshtastic.core.resources.ic_groups
Tff7b72import T7ee787org.meshtastic.core.resources.ic_light_mode
Tff7b72import T7ee787org.meshtastic.core.resources.ic_location_on
Tff7b72import T7ee787org.meshtastic.core.resources.ic_memory
Tff7b72import T7ee787org.meshtastic.core.resources.ic_perm_scan_wifi
Tff7b72import T7ee787org.meshtastic.core.resources.ic_power
Tff7b72import T7ee787org.meshtastic.core.resources.ic_router
Tff7b72import T7ee787org.meshtastic.core.resources.neighbor_info
Tff7b72import T7ee787org.meshtastic.core.resources.pax
Tff7b72import T7ee787org.meshtastic.core.resources.position_log
Tff7b72import T7ee787org.meshtastic.core.resources.power
Tff7b72import T7ee787org.meshtastic.core.resources.signal
Tff7b72import T7ee787org.meshtastic.core.resources.traceroute
Tff7b72import T7ee787org.meshtastic.core.ui.component.ScrollToTopEvent
Tff7b72import T7ee787org.meshtastic.feature.node.compass.CompassViewModel
Tff7b72import T7ee787org.meshtastic.feature.node.detail.NodeDetailScreen
Tff7b72import T7ee787org.meshtastic.feature.node.detail.NodeDetailViewModel
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.AirQualityMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.DeviceMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.EnvironmentMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.HostMetricsLogScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.MetricsViewModel
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.NeighborInfoLogScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.PaxMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.PositionLogScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.PowerMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.SignalMetricsScreen
Tff7b72import T7ee787org.meshtastic.feature.node.metrics.TracerouteLogScreen
Tff7b72import T7ee787kotlin.reflect.KClass
Tf0883e@OptInTb4b4b4(Te6edf3ExperimentalMaterial3AdaptiveApiTff7b72::Te6edf3classTb4b4b4)
Tf0883e@SuppressTb4b4b4(Ta5d6ff"Ta5d6ffLongMethodTa5d6ff"Tb4b4b4)
Tff7b72fun Td2a8ffEntryProviderScopeTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4.Te6edf3nodesGraphTb4b4b4(
Te6edf3backStackTb4b4b4: Te6edf3NavBackStackTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4,
Te6edf3scrollToTopEventsTb4b4b4: Te6edf3FlowTff7b72<Te6edf3ScrollToTopEventTff7b72> Tff7b72= Te6edf3MutableSharedFlowTb4b4b4(Tb4b4b4)Tb4b4b4,
Te6edf3onHandleDeepLinkTb4b4b4: Tb4b4b4(Te6edf3orgTb4b4b4.Te6edf3meshtasticTb4b4b4.Te6edf3coreTb4b4b4.Te6edf3commonTb4b4b4.Te6edf3utilTb4b4b4.Te6edf3CommonUriTb4b4b4, Te6edf3onInvalidTb4b4b4: Tb4b4b4(Tb4b4b4) Tff7b72-Tff7b72> Tffa657UnitTb4b4b4) Tff7b72-Tff7b72> Tffa657Unit Tff7b72= Tb4b4b4{ Te6edf3_Tb4b4b4, Te6edf3_ Tff7b72-Tff7b72> Tb4b4b4}Tb4b4b4,
Te6edf3onNavigateToConnectionsTb4b4b4: Tb4b4b4(Tb4b4b4) Tff7b72-Tff7b72> Tffa657Unit Tff7b72= Tb4b4b4{Tb4b4b4}Tb4b4b4,
Tb4b4b4) Tb4b4b4{
Te6edf3entryTff7b72<Te6edf3NodesRouteTb4b4b4.Te6edf3NodesTff7b72>Tb4b4b4(Te6edf3metadata Tff7b72= Tb4b4b4{ Te6edf3ListDetailSceneStrategyTb4b4b4.Te6edf3listPaneTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4) Tb4b4b4{
Te6edf3AdaptiveNodeListScreenTb4b4b4(
Te6edf3backStack Tff7b72= Te6edf3backStackTb4b4b4,
Te6edf3scrollToTopEvents Tff7b72= Te6edf3scrollToTopEventsTb4b4b4,
Te6edf3onHandleDeepLink Tff7b72= Te6edf3onHandleDeepLinkTb4b4b4,
Te6edf3onNavigateToConnections Tff7b72= Te6edf3onNavigateToConnectionsTb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3nodeDetailGraphTb4b4b4(Te6edf3backStackTb4b4b4)
Tb4b4b4}
Tf0883e@OptInTb4b4b4(Te6edf3ExperimentalMaterial3AdaptiveApiTff7b72::Te6edf3classTb4b4b4)
Tf0883e@SuppressTb4b4b4(Ta5d6ff"Ta5d6ffLongMethodTa5d6ff"Tb4b4b4)
Tff7b72fun Td2a8ffEntryProviderScopeTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4.Te6edf3nodeDetailGraphTb4b4b4(Te6edf3backStackTb4b4b4: Te6edf3NavBackStackTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4) Tb4b4b4{
Te6edf3entryTff7b72<Te6edf3NodesRouteTb4b4b4.Te6edf3NodeDetailTff7b72>Tb4b4b4(Te6edf3metadata Tff7b72= Tb4b4b4{ Te6edf3ListDetailSceneStrategyTb4b4b4.Te6edf3detailPaneTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4) Tb4b4b4{ Te6edf3args Tff7b72-Tff7b72>
Tff7b72val Te6edf3nodeDetailViewModelTb4b4b4: Te6edf3NodeDetailViewModel Tff7b72= Te6edf3koinViewModelTb4b4b4(Tb4b4b4)
Tff7b72val Te6edf3compassViewModelTb4b4b4: Te6edf3CompassViewModel Tff7b72= Te6edf3koinViewModelTb4b4b4(Tb4b4b4)
Tff7b72val Te6edf3destNum Tff7b72= Te6edf3argsTb4b4b4.Te6edf3destNum Tff7b72?: T79c0ff0
Te6edf3NodeDetailScreenTb4b4b4(
Te6edf3nodeId Tff7b72= Te6edf3destNumTb4b4b4,
Te6edf3viewModel Tff7b72= Te6edf3nodeDetailViewModelTb4b4b4,
Te6edf3compassViewModel Tff7b72= Te6edf3compassViewModelTb4b4b4,
Te6edf3navigateToMessages Tff7b72= Tb4b4b4{ Te6edf3key Tff7b72-Tff7b72> Te6edf3backStackTb4b4b4.Te6edf3addTb4b4b4(Te6edf3ContactsRouteTb4b4b4.Te6edf3MessagesTb4b4b4(Te6edf3keyTb4b4b4)Tb4b4b4) Tb4b4b4}Tb4b4b4,
Te6edf3onNavigate Tff7b72= Tb4b4b4{ Te6edf3route Tff7b72-Tff7b72> Te6edf3backStackTb4b4b4.Te6edf3addTb4b4b4(Te6edf3routeTb4b4b4) Tb4b4b4}Tb4b4b4,
Te6edf3onNavigateUp Tff7b72= Te6edf3dropUnlessResumed Tb4b4b4{ Te6edf3backStackTb4b4b4.Te6edf3removeLastOrNullTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3entryTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3TracerouteLogTff7b72>Tb4b4b4(Te6edf3metadata Tff7b72= Tb4b4b4{ Te6edf3ListDetailSceneStrategyTb4b4b4.Te6edf3extraPaneTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4) Tb4b4b4{ Te6edf3args Tff7b72-Tff7b72>
Tff7b72val Te6edf3metricsViewModel Tff7b72= Te6edf3koinViewModelTff7b72<Te6edf3MetricsViewModelTff7b72> Tb4b4b4{ Te6edf3parametersOfTb4b4b4(Te6edf3argsTb4b4b4.Te6edf3destNumTb4b4b4) Tb4b4b4}
Te6edf3metricsViewModelTb4b4b4.Te6edf3setNodeIdTb4b4b4(Te6edf3argsTb4b4b4.Te6edf3destNumTb4b4b4)
Te6edf3TracerouteLogScreenTb4b4b4(
Te6edf3viewModel Tff7b72= Te6edf3metricsViewModelTb4b4b4,
Te6edf3onNavigateUp Tff7b72= Te6edf3dropUnlessResumed Tb4b4b4{ Te6edf3backStackTb4b4b4.Te6edf3removeLastOrNullTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4,
Te6edf3onViewOnMap Tff7b72= Tb4b4b4{ Te6edf3requestIdTb4b4b4, Te6edf3responseLogUuid Tff7b72-Tff7b72>
Te6edf3backStackTb4b4b4.Te6edf3addTb4b4b4(
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3TracerouteMapTb4b4b4(
Te6edf3destNum Tff7b72= Te6edf3argsTb4b4b4.Te6edf3destNumTb4b4b4,
Te6edf3requestId Tff7b72= Te6edf3requestIdTb4b4b4,
Te6edf3logUuid Tff7b72= Te6edf3responseLogUuidTb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4)
Tb4b4b4}Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3entryTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3TracerouteMapTff7b72>Tb4b4b4(Te6edf3metadata Tff7b72= Tb4b4b4{ Te6edf3ListDetailSceneStrategyTb4b4b4.Te6edf3extraPaneTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4) Tb4b4b4{ Te6edf3args Tff7b72-Tff7b72>
Tff7b72val Te6edf3tracerouteMapScreen Tff7b72= Te6edf3orgTb4b4b4.Te6edf3meshtasticTb4b4b4.Te6edf3coreTb4b4b4.Te6edf3uiTb4b4b4.Te6edf3utilTb4b4b4.Te6edf3LocalTracerouteMapScreenProviderTb4b4b4.Te6edf3current
Te6edf3tracerouteMapScreenTb4b4b4(
Te6edf3argsTb4b4b4.Te6edf3destNumTb4b4b4,
Te6edf3argsTb4b4b4.Te6edf3requestIdTb4b4b4,
Te6edf3argsTb4b4b4.Te6edf3logUuidTb4b4b4,
Te6edf3dropUnlessResumed Tb4b4b4{ Te6edf3backStackTb4b4b4.Te6edf3removeLastOrNullTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)
Tb4b4b4}
Te6edf3NodeDetailScreenTb4b4b4.Te6edf3entriesTb4b4b4.Te6edf3forEach Tb4b4b4{ Te6edf3routeInfo Tff7b72-Tff7b72>
Tff7b72when Tb4b4b4(Te6edf3routeInfoTb4b4b4.Te6edf3routeClassTb4b4b4) Tb4b4b4{
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3DeviceMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3DeviceMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PositionLogTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PositionLogTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3EnvironmentMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3EnvironmentMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3SignalMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3SignalMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PowerMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PowerMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3HostMetricsLogTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3HostMetricsLogTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PaxMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PaxMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3AirQualityMetricsTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3AirQualityMetricsTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3NeighborInfoLogTff7b72::Tff7b72class ->
Te6edf3addNodeDetailScreenComposableTff7b72<Te6edf3NodeDetailRouteTb4b4b4.Te6edf3NeighborInfoLogTff7b72>Tb4b4b4(Te6edf3backStackTb4b4b4, Te6edf3routeInfoTb4b4b4) Tb4b4b4{ Tffa657itTb4b4b4.Te6edf3destNum Tb4b4b4}
Tff7b72else Tff7b72-Tff7b72> Tffa657Unit
Tb4b4b4}
Tb4b4b4}
Tb4b4b4}
Tff7b72fun Te6edf3NavKeyTb4b4b4.Td2a8ffisNodeDetailRouteTb4b4b4(Tb4b4b4)Tb4b4b4: Tffa657Boolean Tff7b72= Te6edf3NodeDetailScreenTb4b4b4.Te6edf3entriesTb4b4b4.Te6edf3any Tb4b4b4{ Tff7b72thisTff7b72::Tff7b72class == T56d364itTb4b4b4.Te6edf3routeClass Tb4b4b4}
Tf0883e@OptInTb4b4b4(Te6edf3ExperimentalMaterial3AdaptiveApiTff7b72::Te6edf3classTb4b4b4)
Tff7b72private Tff7b72inline Tff7b72fun Tff7b72<Tff7b72reified Te6edf3R Tb4b4b4: Te6edf3RouteTff7b72> Td2a8ffEntryProviderScopeTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4.Te6edf3addNodeDetailScreenComposableTb4b4b4(
Te6edf3backStackTb4b4b4: Te6edf3NavBackStackTff7b72<Te6edf3NavKeyTff7b72>Tb4b4b4,
Te6edf3routeInfoTb4b4b4: Te6edf3NodeDetailScreenTb4b4b4,
Te6edf3crossinline Te6edf3getDestNumTb4b4b4: Tb4b4b4(Te6edf3RTb4b4b4) Tff7b72-Tff7b72> Tffa657IntTb4b4b4,
Tb4b4b4) Tb4b4b4{
Te6edf3entryTff7b72<Te6edf3RTff7b72>Tb4b4b4(Te6edf3metadata Tff7b72= Tb4b4b4{ Te6edf3ListDetailSceneStrategyTb4b4b4.Te6edf3extraPaneTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4) Tb4b4b4{ Te6edf3args Tff7b72-Tff7b72>
Tff7b72val Te6edf3destNum Tff7b72= Te6edf3getDestNumTb4b4b4(Te6edf3argsTb4b4b4)
Tff7b72val Te6edf3metricsViewModel Tff7b72= Te6edf3koinViewModelTff7b72<Te6edf3MetricsViewModelTff7b72> Tb4b4b4{ Te6edf3parametersOfTb4b4b4(Te6edf3destNumTb4b4b4) Tb4b4b4}
Te6edf3metricsViewModelTb4b4b4.Te6edf3setNodeIdTb4b4b4(Te6edf3destNumTb4b4b4)
Te6edf3routeInfoTb4b4b4.Te6edf3screenComposableTb4b4b4(Te6edf3metricsViewModelTb4b4b4, Te6edf3dropUnlessResumed Tb4b4b4{ Te6edf3backStackTb4b4b4.Te6edf3removeLastOrNullTb4b4b4(Tb4b4b4) Tb4b4b4}Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
T8b949e/** Expect declaration for the platform-specific traceroute map screen. */
Tff7b72enum Tff7b72class T56d364NodeDetailScreenTb4b4b4(
Tff7b72val Te6edf3titleTb4b4b4: Te6edf3StringResourceTb4b4b4,
Tff7b72val Te6edf3routeClassTb4b4b4: Te6edf3KClassTff7b72<Tff7b72out Te6edf3RouteTff7b72>Tb4b4b4,
Tff7b72val Te6edf3iconTb4b4b4: Te6edf3DrawableResource? Tff7b72= Tff7b72nullTb4b4b4,
Tff7b72val Te6edf3screenComposableTb4b4b4: Tf0883e@Composable Tb4b4b4(Te6edf3metricsViewModelTb4b4b4: Te6edf3MetricsViewModelTb4b4b4, Te6edf3onNavigateUpTb4b4b4: Tb4b4b4(Tb4b4b4) Tff7b72-Tff7b72> Tffa657UnitTb4b4b4) Tff7b72-Tff7b72> Tffa657UnitTb4b4b4,
Tb4b4b4) Tb4b4b4{
Te6edf3DEVICETb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3deviceTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3DeviceMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_routerTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3DeviceMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3POSITION_LOGTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3position_logTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PositionLogTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_location_onTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3PositionLogScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3ENVIRONMENTTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3environmentTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3EnvironmentMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_light_modeTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3EnvironmentMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3SIGNALTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3signalTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3SignalMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_cell_towerTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3SignalMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3TRACEROUTETb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3tracerouteTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3TracerouteLogTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_perm_scan_wifiTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3TracerouteLogScreenTb4b4b4(Te6edf3viewModel Tff7b72= Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72= Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3NEIGHBOR_INFOTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3neighbor_infoTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3NeighborInfoLogTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_groupsTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3NeighborInfoLogScreenTb4b4b4(Te6edf3viewModel Tff7b72= Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72= Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3POWERTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3powerTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PowerMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_powerTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3PowerMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3HOSTTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3hostTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3HostMetricsLogTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_memoryTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3HostMetricsLogScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3PAXTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3paxTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3PaxMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_groupTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3PaxMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Te6edf3AIR_QUALITYTb4b4b4(
Te6edf3ResTb4b4b4.Te6edf3stringTb4b4b4.Te6edf3air_qualityTb4b4b4,
Te6edf3NodeDetailRouteTb4b4b4.Te6edf3AirQualityMetricsTff7b72::Te6edf3classTb4b4b4,
Te6edf3ResTb4b4b4.Te6edf3drawableTb4b4b4.Te6edf3ic_airTb4b4b4,
Tb4b4b4{ Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUp Tff7b72-Tff7b72> Te6edf3AirQualityMetricsScreenTb4b4b4(Te6edf3metricsVMTb4b4b4, Te6edf3onNavigateUpTb4b4b4) Tb4b4b4}Tb4b4b4,
Tb4b4b4)Tb4b4b4,
Tb4b4b4}
Served by rngit 1.5.0 - Generated in 0.08s